#ifndef _EBN_CM_ENERGY_HIST_FROM_GOAL_H_
#define _EBN_CM_ENERGY_HIST_FROM_GOAL_H_

#include "EbnCMEnergyHist.h"

#include <vector>

using namespace std;

class CEbnGoal;
class CEbnCompetenceModule;

class CEbnCMEnergyHistFromGoal
{
public:
    CEbnCMEnergyHistFromGoal(CEbnGoal * goal);
    ~CEbnCMEnergyHistFromGoal(void);

    void addCMEnergyHist(CEbnCompetenceModule * cm);
    CEbnCMEnergyHist * getCMEnergyHist(CEbnCompetenceModule * cm);

    bool isHostGoal(CEbnGoal * goal);

    float getEnergyHist(CEbnCompetenceModule * cm, int time);
    bool saveToEnergyHist(CEbnCompetenceModule * cm, float activation);

    CEbnGoal * mpGoal;
    vector<CEbnCMEnergyHist *> mCMEnergyHists;
};

#endif
